Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Displaying Raw • Download


sbapp/kivymd/uix/gridlayout.py b4f0ff722e954d1edc2d4d433f4bd95d362bcc3a (b4f0ff72) Text, 1.40 KB

T8b949e"""
Components/GridLayout
=====================

:class:`~kivy.uix.gridlayout.GridLayout` class equivalent. Simplifies working
with some widget properties. For example:

GridLayout
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

.. code-block::

GridLayout:
size_hint_y: None
height: self.minimum_height

canvas:
Color:
rgba: app.theme_cls.primary_color
Rectangle:
pos: self.pos
size: self.size

MDGridLayout
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

.. code-block::

MDGridLayout:
adaptive_height: True
md_bg_color: app.theme_cls.primary_color

Available options are:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_ adaptive_height_
adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_ adaptive_width_
adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_ adaptive_size_

.. adaptive_height:
adaptive_height
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

.. code-block:: kv

adaptive_height: True

Equivalent

.. code-block:: kv

size_hint_y: None
height: self.minimum_height

.. adaptive_width:
adaptive_width
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

.. code-block:: kv

adaptive_width: True

Equivalent

.. code-block:: kv

size_hint_x: None
width: self.minimum_width

.. adaptive_size:
adaptive_size
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

.. code-block:: kv

adaptive_size: True

Equivalent

.. code-block:: kv

size_hint: None, None
size: self.minimum_size
"""

Tff7b72from T7ee787kivyT7ee787.T7ee787uixT7ee787.T7ee787gridlayout Tff7b72import Te6edf3GridLayout

Tff7b72from T7ee787kivymdT7ee787.T7ee787uix Tff7b72import Te6edf3MDAdaptiveWidget


Tff7b72class T56d364MDGridLayoutTb4b4b4(Te6edf3GridLayoutTb4b4b4, Te6edf3MDAdaptiveWidgetTb4b4b4)Tb4b4b4:
Tff7b72pass


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────